Telegram Group & Telegram Channel
This media is not supported in your browser
VIEW IN TELEGRAM
Задача: Что делает эта странная функция teleport и почему она запускает цикл 32 раза?

🧠 Подсказка:
На первый взгляд это выглядит как хаотичная мешанина побитовых операций, но на самом деле здесь происходит реверс битов (bitwise reversal) — отражение битов справа налево.

Но вопрос — зачем делать это 32 раза подряд?

🔍 Что происходит:

Каждый шаг в теле цикла — это стандартная техника реверса битов через маски и сдвиги:

0xAAAAAAAA, 0xCCCCCCCC, и т.д. — маски по битовым паттернам

Итерация for _ in range(32) делает это снова и снова…

💣 Фишка: первый проход уже полностью отражает 32-битное число.
Остальные 31 повтор возвращают число в исходное состояние — но в побитово инвертированном порядке!

📌 То есть:

Чётное количество циклов — возвращает в исходную позицию

Нечётное — делает реверс

👉 Ответ на teleport(0x12345678) будет реверс битов этого числа.
Ожидаемое: 0x1e6a2c48 (в зависимости от реализации может отличаться).

🎯 Челлендж для продвинутых:

Упростите функцию до одного вызова (без цикла)

Напишите inverse_teleport(x), которая возвращает исходное число обратно

🧩 Эта техника используется в:
— алгоритмах FFT (быстрые преобразования Фурье)
— графике
— реверсировании хэшей
— low-level оптимизациях для SIMD



tg-me.com/python_job_interview/1124
Create:
Last Update:

Задача: Что делает эта странная функция teleport и почему она запускает цикл 32 раза?

🧠 Подсказка:
На первый взгляд это выглядит как хаотичная мешанина побитовых операций, но на самом деле здесь происходит реверс битов (bitwise reversal) — отражение битов справа налево.

Но вопрос — зачем делать это 32 раза подряд?

🔍 Что происходит:

Каждый шаг в теле цикла — это стандартная техника реверса битов через маски и сдвиги:

0xAAAAAAAA, 0xCCCCCCCC, и т.д. — маски по битовым паттернам

Итерация for _ in range(32) делает это снова и снова…

💣 Фишка: первый проход уже полностью отражает 32-битное число.
Остальные 31 повтор возвращают число в исходное состояние — но в побитово инвертированном порядке!

📌 То есть:

Чётное количество циклов — возвращает в исходную позицию

Нечётное — делает реверс

👉 Ответ на teleport(0x12345678) будет реверс битов этого числа.
Ожидаемое: 0x1e6a2c48 (в зависимости от реализации может отличаться).

🎯 Челлендж для продвинутых:

Упростите функцию до одного вызова (без цикла)

Напишите inverse_teleport(x), которая возвращает исходное число обратно

🧩 Эта техника используется в:
— алгоритмах FFT (быстрые преобразования Фурье)
— графике
— реверсировании хэшей
— low-level оптимизациях для SIMD

BY Python вопросы с собеседований


Share with your friend now:
tg-me.com/python_job_interview/1124

View MORE
Open in Telegram


Python вопросы с собеседований Telegram | DID YOU KNOW?

Date: |

If riding a bucking bronco is your idea of fun, you’re going to love what the stock market has in store. Consider this past week’s ride a preview.The week’s action didn’t look like much, if you didn’t know better. The Dow Jones Industrial Average rose 213.12 points or 0.6%, while the S&P 500 advanced 0.5%, and the Nasdaq Composite ended little changed.

Telegram Auto-Delete Messages in Any Chat

Some messages aren’t supposed to last forever. There are some Telegram groups and conversations where it’s best if messages are automatically deleted in a day or a week. Here’s how to auto-delete messages in any Telegram chat. You can enable the auto-delete feature on a per-chat basis. It works for both one-on-one conversations and group chats. Previously, you needed to use the Secret Chat feature to automatically delete messages after a set time. At the time of writing, you can choose to automatically delete messages after a day or a week. Telegram starts the timer once they are sent, not after they are read. This won’t affect the messages that were sent before enabling the feature.

Python вопросы с собеседований from pl


Telegram Python вопросы с собеседований
FROM USA